// 反尼姆博弈(反常游戏)
// 一共有n堆石头，两人轮流进行游戏
// 在每个玩家的回合中，玩家需要选择任何一个非空的石头堆，并从这堆石头中移除任意正数的石头数量
// 谁先拿走最后的石头就失败，返回最终谁会获胜
// 先手获胜，打印John
// 后手获胜，打印Brother
// 测试链接 : https://www.luogu.com.cn/problem/P4279
// 提交以下的code，可以直接通过

// 偶数先手赢
#include <bits/stdc++.h>

using namespace std;

const int MAXN = 51;
int stones[MAXN], t, n;

inline int read()
{
    char ch = getchar();
    int x = 0, f = 1;
    while(ch < '0' || ch > '9')
    {
        if(ch == '-') f = -1;
        ch = getchar();
    }
    while(ch >= '0' && ch <= '9')
    {
        x = 10 * x + ch - '0';
        ch = getchar();
    }
    return f * x;
}

void compute()
{
    int eor = 0, sum = 0;
    for(int i = 0; i < n; ++i)
    {
        eor ^= stones[i];
        sum += stones[i] == 1 ? 1 : 0;
    }
    // 每堆石头的数量都是 1，如果堆数为偶数，那么先手赢
    // 如果不是，那么就取决于总的异或和 eor，eor 不为 0
    // 则先手赢
    if(sum == n) puts(n % 2 == 0 ? "John" : "Brother");
    else puts(eor != 0 ? "John" : "Brother");
}

int main()
{
    t = read();
    while(t--)
    {
        n = read();
        for(int i = 0; i < n; ++i) stones[i] = read();
        compute();
    }

    return 0;
}